Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Локальная очистка базы данных через mysql.exe (s0.sunny)
Author Message
s0.sunny
Заглянувший



Joined: 31 Aug 2011
Posts: 2
Карма: 0
   поощрить/наказать


PostPosted: Wed Aug 31, 2011 11:55 pm (написано за 5 минут 41 секунду)
   Post subject: Локальная очистка базы данных через mysql.exe
Reply with quote

Есть такой вопрос. Поскольку очищать базу данных через PHPMyAdmin каждый раз уж больно долго и нудно, то на удаленном сервере для очистки базы данных испльзую команду (по SSH):
Code (any language): скопировать код в буфер обмена
mysql --silent --skip-column-names -ulogin -ppass -hmysql.pioty.mass.hc.ru wwwpioty -e "show tables" | awk '{print "drop table " $1 ";"}' | mysql -ulogin -ppass -hmysql.pioty.mass.hc.ru wwwpioty
Все замечательно работает и указанная база (wwwpioty) очищается. Пытаюсь провернуть то же самое в локале (на денвере) - не работает:
Code (any language): скопировать код в буфер обмена
C:\WebServers\usr\local\mysql-5.1\bin\mysql.exe --silent --skip-column-names -ulogin -ppass -hlocalhost wwwpioty -e "show tables" | awk '{print "drop table " $1 ";"}' | mysql -ulogin -ppass -hlocalhost wwwpioty
Консоль выдает:
"awk" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. Может надо использовать gawk под винду? Вобщем что я делаю не так?
Или даже может кто-нибудь подскажет другой способ очистки нужной базы под денвер?
Back to top
View user's profile Send private message
s0.sunny
Заглянувший



Joined: 31 Aug 2011
Posts: 2
Карма: 0
   поощрить/наказать


PostPosted: Sat Sep 03, 2011 10:03 am (спустя 2 дня 10 часов 8 минут; написано за 1 минуту 12 секунд)
   Post subject:
Reply with quote

Нашел ответ. Скачиваем набор утилит - UnxUtils. Распаковываем например в C:\UnxUtils\usr\local\wbin\
Далее выполняем:
Code (any language): скопировать код в буфер обмена
set UnixUtilsPath=C:\UnxUtils\usr\local\wbin\
set MySQLPath=C:\WebServers\usr\local\mysql-5.1\bin\
set dbname=db
set usr=user
set pwd=pass
"%MySQLPath%mysql" -u%usr% -p%pwd% %dbname% -e "show tables" | "%UnixUtilsPath%grep" -v Tables_in | "%UnixUtilsPath%gawk" "{print \"drop table \" $1 \";\"}" | "%MySQLPath%mysql" -u%usr% -p%pwd% %dbname%
Back to top
View user's profile Send private message
Maus
Модератор



Joined: 29 Jun 2003
Posts: 8151
Карма: 271
   поощрить/наказать

Location: пос. Омсукчан Магаданской области

PostPosted: Thu Mar 01, 2012 11:04 pm (спустя 5 месяцев 28 дней 13 часов 32 секунды; написано за 1 минуту 9 секунд)
   Post subject:
Reply with quote

s0.sunny wrote:
C:\WebServers\usr
только всё же Z:\usr (ну или какую Вы букву выбрали для виртуального диска). А если UnxUtils поставить в Z:\usr , вообще красота будет
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML